<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en"><head>
    <title>IThingDevice </title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <meta name="dc.created" content="2020-03-25">
    <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
    <link rel="stylesheet" type="text/css" href="../../../../../dokka-javadoc-stylesheet.css" title="Style">
    <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
    <script type="text/javascript" src="../../../../../jquery/jquery-3.3.1.js"></script>
    <script type="text/javascript" src="../../../../../jquery/jquery-migrate-3.0.1.js"></script>
    <script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>

    <script type="text/javascript" src="../../../../../search.js"></script>
    <script async type="text/javascript" src="../../../../../module-search-index.js"></script>
    <script async type="text/javascript" src="../../../../../package-search-index.js"></script>
    <script async type="text/javascript" src="../../../../../type-search-index.js"></script>
    <script async type="text/javascript" src="../../../../../member-search-index.js"></script>
    <script async type="text/javascript" src="../../../../../tag-search-index.js"></script>
</head><body>
<script type="text/javascript">
var pathtoroot = "../../../../../";
</script>
<noscript>
    <div>JavaScript is disabled on your browser.</div>
</noscript><header role="banner">
    <nav role="navigation">
        <div class="fixedNav">
            <!-- ========= START OF TOP NAVBAR ======= -->
            <div class="topNav"><a id="navbar.top">
                <!--   -->
            </a>
                <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a>
                </div>
                <a id="navbar.top.firstrow">
                    <!--   -->
                </a>
                <ul class="navList" title="Navigation">
    <li><a href="../../../../../index.html">Overview</a></li>
    
    <li><a href="package-summary.html">Package</a></li>
    
    <li>Class</li>
    
    <li><a href="package-tree.html">Tree</a></li>
    
    <li><a href="../../../../../deprecated.html">Deprecated</a></li>
    <li><a href="../../../../../index-files/index-1.html">Index</a></li>
    <li>Help</li>
</ul></div>
            <div class="subNav">
<ul class="navList" id="allclasses_navbar_top" style="display: block;">
    <li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>

<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" class="ui-autocomplete-input" autocomplete="off" placeholder="Search">
<input type="reset" id="reset" value="reset">
</li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div><!-- ========= END OF TOP NAVBAR ========= -->
        </div>
        <div class="navPadding">&nbsp;</div>
        <script type="text/javascript"><!--
        $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
        //-->
        </script>
    </nav>
</header>

<main role="main">
    <div class="header">
        <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html"></a></div>
        <h2 title="Interface IThingDevice" class="title">Interface IThingDevice</h2>
    </div>
    <div class="contentContainer">
        <!-- <ul class="inheritance">
            <li>java.lang.Object</li>
            <li>
                <ul class="inheritance">
                    <li>adaptation.Adaptation</li>
                </ul>
            </li>
        </ul> TODO inheritance tree -->
        <div class="description">
            <ul class="blockList">
                <li class="blockList">
                    
                    <hr>
                    <pre class="wrap-overflow">

public interface <span class="typeNameLabel"><a href=IThingDevice.html>IThingDevice</a></span>

                    </pre>
                    <div class="block"><p>Provides device related operations, like device control, status change monitoring, rename, firmware upgrade, remove, factory reset and so on.</p></div>
                </li>
            </ul>
        </div>
        <div class="summary">
            <ul class="blockList">
                <li class="blockList">
                <!-- ======== NESTED CLASS SUMMARY ======== -->
                    
                    <!-- =========== FIELD SUMMARY =========== -->
                    
                    <!-- ======== CONSTRUCTOR SUMMARY ======== -->
                    
                    <!-- =========== ENUM CONSTANT SUMMARY =========== -->
                    
                    <!-- ========== METHOD SUMMARY =========== -->
                    
                    <section role="region">
                        <ul class="blockList">
                            <li class="blockList"><a id="method.summary">
                                <!--   -->
                            </a>
                                <h3>Method Summary</h3>
                                <div class="memberSummary">
                                    <div role="tablist" aria-orientation="horizontal">
                                        <button role="tab" aria-selected="true" aria-controls="memberSummary_tabpanel" tabindex="0" onkeydown="switchTab(event)" id="t0" class="activeTableTab">All Methods</button>
                                        <!-- TODO: Instance and Concrete Methods #1118 -->
                                    </div>
                                    <div id="memberSummary_tabpanel" role="tabpanel">
                                    <table aria-labelledby="t0">
                                        <tr>
                                            <th class="colFirst" scope="col">Modifier and Type</th>
                                            <th class="colSecond" scope="col">Method</th>
                                            <th class="colLast" scope="col">Description</th>
                                        </tr>
                                        
                                        <tr id="i0" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#removeDevice(IResultCallback)>removeDevice</a>(IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Remove the device from the list of user devices.</td>
                                        </tr>
                                        
                                        <tr id="i1" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#renameDevice(String,IResultCallback)>renameDevice</a>(String name, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Rename the device</td>
                                        </tr>
                                        
                                        <tr id="i2" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#publishDps(String,ThingDevicePublishModeEnum,IResultCallback)>publishDps</a>(String dps, ThingDevicePublishModeEnum publishModeEnum, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Send the command to the deviceThe successful issuing of a command does not mean that the device is successfully operated,but only means that the command has been successfully sent.</td>
                                        </tr>
                                        
                                        <tr id="i3" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#publishDps(String,IResultCallback)>publishDps</a>(String dps, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Send the command to the device by auto mode</td>
                                        </tr>
                                        
                                        <tr id="i4" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#publishCommands(Map,IResultCallback)>publishCommands</a>(Map&lt;String, Object&gt; commands, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Send the standard data points code command to the device by auto mode</td>
                                        </tr>
                                        
                                        <tr id="i5" class="rowColor">
                                            <td class="colFirst"><code>abstract boolean</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#isMqttConnect()>isMqttConnect</a>() </code>
                                            </th>
                                            <td class="colLast">Whether the MQTT is connected.</td>
                                        </tr>
                                        
                                        <tr id="i6" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#registerDeviceListener(IDeviceListener)>registerDeviceListener</a>(IDeviceListener listener) </code>
                                            </th>
                                            <td class="colLast">Registration the standard instruction device status change listener!!!</td>
                                        </tr>
                                        
                                        <tr id="i7" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#registerDevListener(IDevListener)>registerDevListener</a>(IDevListener listener) </code>
                                            </th>
                                            <td class="colLast">Register the device status change listenerThe device related information (dp data, device name, device online status and device removal),which will be synchronized here in real time.</td>
                                        </tr>
                                        
                                        <tr id="i8" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#unRegisterDevListener()>unRegisterDevListener</a>() </code>
                                            </th>
                                            <td class="colLast">Unregister the device status change listener</td>
                                        </tr>
                                        
                                        <tr id="i9" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#getDp(String,IResultCallback)>getDp</a>(String dpId, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Query the latest data of the dp from the device;Those data will be called back from the <a href=IThingDevice.html#registerDevListener(IDevListener)>registerDevListener</a>onDpUpdate.</td>
                                        </tr>
                                        
                                        <tr id="i10" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#getDpList(List,IResultCallback)>getDpList</a>(List&lt;String&gt; dpId, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Query the data point list by data point id from the device;</td>
                                        </tr>
                                        
                                        <tr id="i11" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#resetFactory(IResultCallback)>resetFactory</a>(IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Reset the device and restore to the factory settings;The device-related data will be cleared;And the device will re-enter the network to be distributed state (smart config mode);</td>
                                        </tr>
                                        
                                        <tr id="i12" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#getDeviceProperty(IPropertyCallback<Map>)>getDeviceProperty</a>(IPropertyCallback&lt;Map&gt; callback) </code>
                                            </th>
                                            <td class="colLast">Get the device property</td>
                                        </tr>
                                        
                                        <tr id="i13" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#saveDeviceProperty(String,String,IResultCallback)>saveDeviceProperty</a>(String code, String value, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Save the device property</td>
                                        </tr>
                                        
                                        <tr id="i14" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#getDataPointStat(DataPointTypeEnum,long,int,String,IGetDataPointStatCallback)>getDataPointStat</a>(DataPointTypeEnum type, long startTime, int number, String dpId, IGetDataPointStatCallback callback) </code>
                                            </th>
                                            <td class="colLast">Get the device's history data point.</td>
                                        </tr>
                                        
                                        <tr id="i15" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#updateIcon(File,IResultCallback)>updateIcon</a>(File iconFile, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Update the device's icon</td>
                                        </tr>
                                        
                                        <tr id="i16" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#queryData(String,IResultCallback)>queryData</a>(String data, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Query data</td>
                                        </tr>
                                        
                                        <tr id="i17" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#onDestroy()>onDestroy</a>() </code>
                                            </th>
                                            <td class="colLast">Recycle and release the resources</td>
                                        </tr>
                                        
                                        <tr id="i18" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#requestWifiSignal(WifiSignalListener)>requestWifiSignal</a>(WifiSignalListener listener) </code>
                                            </th>
                                            <td class="colLast">Query the signal strength of the current device's Wi-Fi</td>
                                        </tr>
                                        
                                        <tr id="i19" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#getInitiativeQueryDpsInfoWithDpsArray(List,IResultCallback)>getInitiativeQueryDpsInfoWithDpsArray</a>(List&lt;Integer&gt; dps, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Query the device's power consumption</td>
                                        </tr>
                                        
                                        <tr id="i20" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#registerWarnMessageListener(IWarningMsgListener)>registerWarnMessageListener</a>(IWarningMsgListener iWarningMsgListener) </code>
                                            </th>
                                            <td class="colLast">Register warn message listener</td>
                                        </tr>
                                        
                                        <tr id="i21" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#registerUpgradeStatusListener(IThingDeviceUpgradeStatusCallback)>registerUpgradeStatusListener</a>(IThingDeviceUpgradeStatusCallback callback) </code>
                                            </th>
                                            <td class="colLast">Register Upgrade status listener</td>
                                        </tr>
                                        
                                        <tr id="i22" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#publishDps(String,String,IResultCallback)>publishDps</a>(String dps, String orders, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Distributed according to the specified channel sequence</td>
                                        </tr>
                                        
                                        <tr id="i23" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#getOfflineReminderSupportStatus(String,IThingResultCallback<IsSupportOffLineBean>)>getOfflineReminderSupportStatus</a>(String hdId, IThingResultCallback&lt;IsSupportOffLineBean&gt; callback) </code>
                                            </th>
                                            <td class="colLast"></td>
                                        </tr>
                                        
                                        <tr id="i24" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#getOfflineReminderStatus(String,IThingResultCallback<Boolean>)>getOfflineReminderStatus</a>(String devId, IThingResultCallback&lt;Boolean&gt; callback) </code>
                                            </th>
                                            <td class="colLast">Query the setting status of device offline reminders</td>
                                        </tr>
                                        
                                        <tr id="i25" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#setOfflineReminderStatus(String,boolean,IResultCallback)>setOfflineReminderStatus</a>(String devId, boolean isWarn, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Set device offline reminder function</td>
                                        </tr>
                                        
                                        <tr id="i26" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#publishThingMessageWithType(ThingSmartThingMessageType,Object,IResultCallback)>publishThingMessageWithType</a>(ThingSmartThingMessageType thingMessageType, Object command, IResultCallback callback) </code>
                                            </th>
                                            <td class="colLast">Send the data command to the thing_link device by mqtt</td>
                                        </tr>
                                        
                                        <tr id="i27" class="rowColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#registerThingLinkMessageListener(IThingLinkDeviceListener)>registerThingLinkMessageListener</a>(IThingLinkDeviceListener listener) </code>
                                            </th>
                                            <td class="colLast">register thinglink device message listener</td>
                                        </tr>
                                        
                                        <tr id="i28" class="altColor">
                                            <td class="colFirst"><code>abstract void</code>
                                            </td>
                                            <th class="colSecond" scope="row"><code><a href=IThingDevice.html#unRegisterThingLinkMessageListener()>unRegisterThingLinkMessageListener</a>() </code>
                                            </th>
                                            <td class="colLast">unRegister thinglink device message listener</td>
                                        </tr>
                                        
                                        </tbody>
                                    </table>
                                </div>
                                <ul class="blockList">
                                
                                    <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
                                        <!--   -->
                                    </a>
                                        <h3>Methods inherited from class&nbsp;java.lang.Object</h3>
                                        <code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString,
                                            wait, wait, wait</code></li>
                                </ul>
                            </li>
                        </ul>
                    </section>
                    
                </li>
            </ul>
        </div>
        <div class="details">
            <ul class="blockList">
                <li class="blockList">
                    <!-- ========= CONSTRUCTOR DETAIL ======== -->
                    
                    <!-- ============ METHOD DETAIL ========== -->
                    
                    <section role="region">
                        <ul class="blockList">
                            <li class="blockList"><a id="method.detail">
                                <!--   -->
                            </a>
                                <h3>Method Detail</h3>
                                
                                <a id="removeDevice(IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>removeDevice</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#removeDevice(IResultCallback)>removeDevice</a>(IResultCallback callback)</pre>
                                        <div class="block"><p>Remove the device from the list of user devices.</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="renameDevice(String,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>renameDevice</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#renameDevice(String,IResultCallback)>renameDevice</a>(String name, IResultCallback callback)</pre>
                                        <div class="block"><p>Rename the device</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>name</code> - The name of the replacement</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="publishDps(String,ThingDevicePublishModeEnum,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>publishDps</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#publishDps(String,ThingDevicePublishModeEnum,IResultCallback)>publishDps</a>(String dps, ThingDevicePublishModeEnum publishModeEnum, IResultCallback callback)</pre>
                                        <div class="block"><p>Send the command to the device</p><p>The successful issuing of a command does not mean that the device is successfully operated,but only means that the command has been successfully sent.</p><p>If the operation succeeds, the data point information will be reported,and returned through the onDpUpdate interface.</p><p>The command string is converted to jsonString in the format of Map.</p><p>The command can send multiple dp data at one time.</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>dps</code> - Data points</dd>
                                            
                                            
                                            
                                            <dd><code>publishModeEnum</code> - Publish mode ThingDevicePublishModeEnum</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="publishDps(String,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>publishDps</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#publishDps(String,IResultCallback)>publishDps</a>(String dps, IResultCallback callback)</pre>
                                        <div class="block"><p>Send the command to the device by auto mode</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>dps</code> - Data points</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="publishCommands(Map,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>publishCommands</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#publishCommands(Map,IResultCallback)>publishCommands</a>(Map&lt;String, Object&gt; commands, IResultCallback callback)</pre>
                                        <div class="block"><p>Send the standard data points code command to the device by auto mode</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>commands</code> - Standard data points code</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="isMqttConnect()">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>isMqttConnect</h4>
                                        <pre class="methodSignature">@Deprecated() abstract boolean <a href=IThingDevice.html#isMqttConnect()>isMqttConnect</a>()</pre>
                                        <div class="block"><p>Whether the MQTT is connected.</p><p>Not recommended, it is recommended to use another interface isServerConnect, such as <code>{@code ThingHomeSdk.getServerInstance().isServerConnect()}</code></p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="registerDeviceListener(IDeviceListener)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>registerDeviceListener</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#registerDeviceListener(IDeviceListener)>registerDeviceListener</a>(IDeviceListener listener)</pre>
                                        <div class="block"><p>Registration the standard instruction device status change listener!!! Not opened yet !!!</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>listener</code> - The listener IDeviceListener</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="registerDevListener(IDevListener)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>registerDevListener</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#registerDevListener(IDevListener)>registerDevListener</a>(IDevListener listener)</pre>
                                        <div class="block"><p>Register the device status change listener</p><p>The device related information (dp data, device name, device online status and device removal),which will be synchronized here in real time.</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>listener</code> - The listener IDevListener</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="unRegisterDevListener()">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>unRegisterDevListener</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#unRegisterDevListener()>unRegisterDevListener</a>()</pre>
                                        <div class="block"><p>Unregister the device status change listener</p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="getDp(String,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>getDp</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#getDp(String,IResultCallback)>getDp</a>(String dpId, IResultCallback callback)</pre>
                                        <div class="block"><p>Query the latest data of the dp from the device;</p><p>Those data will be called back from the <a href=IThingDevice.html#registerDevListener(IDevListener)>registerDevListener</a>onDpUpdate.</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>dpId</code> - Data point id</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="getDpList(List,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>getDpList</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#getDpList(List,IResultCallback)>getDpList</a>(List&lt;String&gt; dpId, IResultCallback callback)</pre>
                                        <div class="block"><p>Query the data point list by data point id from the device;</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>dpId</code> - Data point id</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="resetFactory(IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>resetFactory</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#resetFactory(IResultCallback)>resetFactory</a>(IResultCallback callback)</pre>
                                        <div class="block"><p>Reset the device and restore to the factory settings;The device-related data will be cleared;And the device will re-enter the network to be distributed state (smart config mode);</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="getDeviceProperty(IPropertyCallback&lt;Map&gt;)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>getDeviceProperty</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#getDeviceProperty(IPropertyCallback<Map>)>getDeviceProperty</a>(IPropertyCallback&lt;Map&gt; callback)</pre>
                                        <div class="block"><p>Get the device property</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>callback</code> - Callback IPropertyCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="saveDeviceProperty(String,String,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>saveDeviceProperty</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#saveDeviceProperty(String,String,IResultCallback)>saveDeviceProperty</a>(String code, String value, IResultCallback callback)</pre>
                                        <div class="block"><p>Save the device property</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>code</code> - Data point's key</dd>
                                            
                                            
                                            
                                            <dd><code>value</code> - Data point's value</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="getDataPointStat(DataPointTypeEnum,long,int,String,IGetDataPointStatCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>getDataPointStat</h4>
                                        <pre class="methodSignature">@Deprecated() abstract void <a href=IThingDevice.html#getDataPointStat(DataPointTypeEnum,long,int,String,IGetDataPointStatCallback)>getDataPointStat</a>(DataPointTypeEnum type, long startTime, int number, String dpId, IGetDataPointStatCallback callback)</pre>
                                        <div class="block"><p>Get the device's history data point.</p><p>Replace by https://thinginc.github.io/thingsmart_home_android_sdk_doc/zh-hans/resource/Device_Get_Dps_History.html</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>type</code> - Data point type DataPointTypeEnum</dd>
                                            
                                            
                                            
                                            <dd><code>startTime</code> - StartTime</dd>
                                            
                                            
                                            
                                            <dd><code>number</code> - Data point count, valid values: (1~50)</dd>
                                            
                                            
                                            
                                            <dd><code>dpId</code> - Data point id</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IGetDataPointStatCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="updateIcon(File,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>updateIcon</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#updateIcon(File,IResultCallback)>updateIcon</a>(File iconFile, IResultCallback callback)</pre>
                                        <div class="block"><p>Update the device's icon</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>iconFile</code> - The icon file</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="queryData(String,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>queryData</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#queryData(String,IResultCallback)>queryData</a>(String data, IResultCallback callback)</pre>
                                        <div class="block"><p>Query data</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>data</code> - Data point</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="onDestroy()">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>onDestroy</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#onDestroy()>onDestroy</a>()</pre>
                                        <div class="block"><p>Recycle and release the resources</p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="requestWifiSignal(WifiSignalListener)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>requestWifiSignal</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#requestWifiSignal(WifiSignalListener)>requestWifiSignal</a>(WifiSignalListener listener)</pre>
                                        <div class="block"><p>Query the signal strength of the current device's Wi-Fi</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>listener</code> - Listener WifiSignalListener</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="getInitiativeQueryDpsInfoWithDpsArray(List,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>getInitiativeQueryDpsInfoWithDpsArray</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#getInitiativeQueryDpsInfoWithDpsArray(List,IResultCallback)>getInitiativeQueryDpsInfoWithDpsArray</a>(List&lt;Integer&gt; dps, IResultCallback callback)</pre>
                                        <div class="block"><p>Query the device's power consumption</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>dps</code> - Data point id list</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="registerWarnMessageListener(IWarningMsgListener)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>registerWarnMessageListener</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#registerWarnMessageListener(IWarningMsgListener)>registerWarnMessageListener</a>(IWarningMsgListener iWarningMsgListener)</pre>
                                        <div class="block"><p>Register warn message listener</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>iWarningMsgListener</code> - Listener IWarningMsgListener</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="registerUpgradeStatusListener(IThingDeviceUpgradeStatusCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>registerUpgradeStatusListener</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#registerUpgradeStatusListener(IThingDeviceUpgradeStatusCallback)>registerUpgradeStatusListener</a>(IThingDeviceUpgradeStatusCallback callback)</pre>
                                        <div class="block"><p>Register Upgrade status listener</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>callback</code> - Callback IThingDeviceUpgradeStatusCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="publishDps(String,String,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>publishDps</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#publishDps(String,String,IResultCallback)>publishDps</a>(String dps, String orders, IResultCallback callback)</pre>
                                        <div class="block"><p>Distributed according to the specified channel sequence</p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="getOfflineReminderSupportStatus(String,IThingResultCallback&lt;IsSupportOffLineBean&gt;)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>getOfflineReminderSupportStatus</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#getOfflineReminderSupportStatus(String,IThingResultCallback<IsSupportOffLineBean>)>getOfflineReminderSupportStatus</a>(String hdId, IThingResultCallback&lt;IsSupportOffLineBean&gt; callback)</pre>
                                        <div class="block"></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="getOfflineReminderStatus(String,IThingResultCallback&lt;Boolean&gt;)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>getOfflineReminderStatus</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#getOfflineReminderStatus(String,IThingResultCallback<Boolean>)>getOfflineReminderStatus</a>(String devId, IThingResultCallback&lt;Boolean&gt; callback)</pre>
                                        <div class="block"><p>Query the setting status of device offline reminders</p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="setOfflineReminderStatus(String,boolean,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>setOfflineReminderStatus</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#setOfflineReminderStatus(String,boolean,IResultCallback)>setOfflineReminderStatus</a>(String devId, boolean isWarn, IResultCallback callback)</pre>
                                        <div class="block"><p>Set device offline reminder function</p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="publishThingMessageWithType(ThingSmartThingMessageType,Object,IResultCallback)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>publishThingMessageWithType</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#publishThingMessageWithType(ThingSmartThingMessageType,Object,IResultCallback)>publishThingMessageWithType</a>(ThingSmartThingMessageType thingMessageType, Object command, IResultCallback callback)</pre>
                                        <div class="block"><p>Send the data command to the thing_link device by mqtt</p></div>
                                        
                                        <dl>
                                            <dt><span class="paramLabel">Parameters:</span></dt>
                                            
                                            
                                            <dd><code>thingMessageType</code> - ThingSmartThingMessageType</dd>
                                            
                                            
                                            
                                            <dd><code>command</code> - Standard data points code eg {"code":"1424", xx:xxx} json data</dd>
                                            
                                            
                                            
                                            <dd><code>callback</code> - Callback IResultCallback</dd>
                                            
                                            
                                        </dl>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="registerThingLinkMessageListener(IThingLinkDeviceListener)">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockList"
                                          >
                                    <li class="blockList">
                                        <h4>registerThingLinkMessageListener</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#registerThingLinkMessageListener(IThingLinkDeviceListener)>registerThingLinkMessageListener</a>(IThingLinkDeviceListener listener)</pre>
                                        <div class="block"><p>register thinglink device message listener</p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                                <a id="unRegisterThingLinkMessageListener()">
                                    <!--   -->
                                </a>
                                <ul class=
                                              "blockListLast"
                                          >
                                    <li class="blockList">
                                        <h4>unRegisterThingLinkMessageListener</h4>
                                        <pre class="methodSignature"> abstract void <a href=IThingDevice.html#unRegisterThingLinkMessageListener()>unRegisterThingLinkMessageListener</a>()</pre>
                                        <div class="block"><p>unRegister thinglink device message listener</p></div>
                                        
                                        <!-- TODO missing return annotation -->
                                    </li>
                                </ul>
                                
                            </li>
                        </ul>
                    </section>
                    
                </li>
            </ul>
        </div>
    </div>
</main>
<footer role="contentinfo">
    <nav role="navigation">
        <!-- ======= START OF BOTTOM NAVBAR ====== -->
        <div class="bottomNav"><a id="navbar.bottom">
            <!--   -->
        </a>
            <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a>
            </div>
            <a id="navbar.bottom.firstrow">
                <!--   -->
            </a>
            <ul class="navList" title="Navigation">
    <li><a href="../../../../../index.html">Overview</a></li>
    
    <li><a href="package-summary.html">Package</a></li>
    
    <li>Class</li>
    
    <li><a href="package-tree.html">Tree</a></li>
    
    <li><a href="../../../../../deprecated.html">Deprecated</a></li>
    <li><a href="../../../../../index-files/index-1.html">Index</a></li>
    <li>Help</li>
</ul></div>
        <a id="skip.navbar.bottom">
            <!--   -->
        </a>
        <div class="subNav">
<ul class="navList" id="allclasses_navbar_top" style="display: block;">
    <li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div><!-- ======== END OF BOTTOM NAVBAR ======= -->
    </nav>
</footer><ul class="ui-autocomplete ui-front ui-menu ui-widget ui-widget-content" id="ui-id-1" tabindex="0"
    style="display: none;"></ul>
<span role="status" aria-live="assertive" aria-relevant="additions" class="ui-helper-hidden-accessible"></span>
</body>
</html>
